import { createApp } from 'vue'
import { Tabbar, TabbarItem, SideNavbar, SubSideNavbar, SideNavbarItem, Swiper, SwiperItem, ImagePreview, Card, Dialog, DatePicker, Avatar } from '@nutui/nutui-taro'
import './app.scss'

const App = createApp({
  onShow() {
    // 存入初次打开小程序的时间，为后面清除缓存使用
    const dataExpire = wx.getStorageSync('data_expire');
    if (dataExpire) {
      // 不是第一次进入
      const expiration = dataExpire + 24 * 60 * 60 * 1000; // 缓存时间：1小时
      const timestamp = Date.parse(new Date()); // 当前时间
      if (timestamp > expiration) {
        wx.clearStorageSync(); // 如果现在的时间已经超过了固定的时间，就清本地缓存
        wx.setStorageSync('data_expire', Date.parse(new Date())); // 重新设置时间
      }
    } else {
      // 第一次进小程序
      wx.setStorageSync('data_expire', Date.parse(new Date()));
    }
  },
  // 入口组件不需要实现 render 方法，即使实现了也会被 taro 所覆盖
})
App.use(Tabbar)
App.use(TabbarItem)
App.use(SideNavbar)
App.use(SubSideNavbar)
App.use(SideNavbarItem)
App.use(Swiper)
App.use(SwiperItem)
App.use(ImagePreview)
App.use(Card)
App.use(Dialog)
App.use(DatePicker)
App.use(Avatar)
export default App
